home *** CD-ROM | disk | FTP | other *** search
/ Aminet 19 / Aminet 19 (1997)(GTI - Schatztruhe)[!][Jun 1997].iso / Aminet / comm / maxs / dfbv13.lha / dfb / install < prev    next >
Text File  |  1980-01-18  |  8KB  |  226 lines

  1. ;;;; DFB Installer install script, V1.0 for DFB release V1.3
  2. ;;;;
  3. ;;;;
  4. ;;;;
  5. (procedure
  6.  copy-main-over
  7.     (copyfiles (source "")
  8.         (pattern "~(developers#?|DFBMakeKeyFile#?|REGISTERED_USERS_README#?)")
  9.         (dest "DFB:"))
  10.     (copyfiles (source "/DFB.info")
  11.         (dest "DFB:/"))
  12. )
  13.  
  14. (procedure
  15.  copy-libraries
  16.      (copyfiles (source "libs")
  17.          (pattern "dfb.library")
  18.          (dest "libs:"))
  19. )
  20.  
  21. (procedure
  22.  copy-c-drawer
  23.      (copyfiles (source "c")
  24.          (all)
  25.          (dest "C:"))
  26. )
  27.  
  28. (procedure
  29.  copy-developers
  30.     (if (askbool (prompt "\nDo you want to " MODE " the developer's kit?\n")
  31.             (choices "Yes" "No")
  32.             (help "The developer's kit contains all the relevant includes\n"
  33.                 "and documentation to help you code utilities for DFB.\n"
  34.                 "Most users will not need this.\n"))
  35.         (copyfiles (source "")
  36.             (pattern "developers#?")
  37.             (dest "DFB:")))
  38. )
  39.  
  40. (procedure
  41.  copy-readdfb
  42.     (set READDFBPATH (askdir            ;; get read dfb's path
  43.         (default "DFB:")
  44.         (prompt "Please enter path where you keep ReadDFB:")
  45.         (help "The standard place is DFB:, but some people\n"
  46.             "move ReadDFB to BBS:Files/Door. If you are\n"
  47.             "unsure check these directories to see where\n"
  48.             "the file ReadDFB is.\n")))
  49.     (copyfiles (source "ReadDFB")
  50.         (dest READDFBPATH))        
  51. )
  52.     
  53. (procedure 
  54.  install-dfb-login 
  55.     (makedir "BBS:Doors/DFB")
  56.  
  57.     (copyfiles (source "")
  58.     (pattern "(DFBLogin|pauseflagon)")
  59.     (dest "BBS:Doors/DFB"))
  60.  
  61.     (textfile (dest "BBS:Doors/Introdoor.text")        ;; Run DFBLogin automatically
  62.         (append    "DFB/DFBLogin"))    
  63. )
  64.  
  65. (procedure
  66.  copy-files-over
  67.     (makeassign "DFB" DFBPATH)
  68.     (copy-main-over)    
  69.     (install-dfb-login)
  70.     (if (= @user-level 2)    
  71.         (if (askbool (prompt "\nInstall DFBLogin in your MAXsBBS user login ?\n")
  72.             (choices "Yes" "No")
  73.             (help "DFBLogin is the command which asks users to enter a\n"
  74.                 "file description if when they uploaded the file they\n"
  75.                 "didn't leave a file description. If you select Yes, I\n"
  76.                 "will copy the file to your BBS:Doors/DFB directory\n"
  77.                 "where it belongs and add it automatically to your\n"
  78.                 "MAX's login file: BBS:Doors/Introdoor.text. This\n"
  79.                 "means that each time a user enters your BBS, I will\n"
  80.                 "make sure they've left file descriptions.\n"))
  81.             (install-dfb-login))
  82.         (install-dfb-login))        
  83.     (copy-developers)
  84.     (copy-libraries)
  85.     (copy-c-drawer)
  86. )
  87. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  88. (procedure 
  89.  install-dfb     
  90.     (set MODE "install")
  91.     (message "INSTALLING DFB\n\n"
  92.             "This machine does not have DFB installed, this script\n"
  93.             "will handle the dos or file side of DFB. After this\n"
  94.             "script is run, you will still need to install the\n"
  95.             "MAX's side.\n")
  96.     (set DFBPATH (askdir            ;; get path to install DFB to
  97.         (default "BBS:")
  98.         (prompt "Please enter path to install DFB to:")
  99.         (help "DFB needs a home directory to install its preference\n"
  100.             "commands, these are the GUI programmes which allow\n"
  101.             "you to interact with DFB.\n")
  102.         (newpath)))
  103.     (set DFBDATAPATH (askdir        ;; get path to put dfbdata:dfb.data
  104.         (default "bbs:files/")
  105.         (prompt "Where do you want to keep DFB's file list?")
  106.         (help "This is DFB's masterlist of the files on your BBS\n"
  107.             "It is the equivelant to MAX's BBS:Files/File.data\n"
  108.             "This script will also keep DFB's copy of the userlist,\n"
  109.             "and its own preference settings here. If you want them\n"
  110.             "somewhere else you can modify them later on. See\n"
  111.             "manual.\n")
  112.         (newpath)))
  113.     (set DFBUSERPATH DFBDATAPATH)    ;; straight copies of the above
  114.     (set DFBPREFSPATH DFBDATAPATH)                
  115.     (set DFBTAGPATH (askdir            ;; get path to keep tagged files
  116.         (default "ram:")
  117.         (prompt "Where do you want to keep the user's saved\n"
  118.                 "tagged file lists?")
  119.         (help "DFB saves each user's tagged file lists when they\n"
  120.                  "log off. If you want DFB to always remember them,\n"
  121.                  "even after reset, change this directory to one on\n"
  122.                  "your HD, e.g: " DFBDATAPATH)
  123.         (newpath)))                 
  124.     (set USERSTARTUP (cat "assign DFB: " DFBPATH "\n"
  125.                 "assign DFBData: " DFBDATAPATH "\n"
  126.                 "assign DFBUser: " DFBUSERPATH "\n"
  127.                 "assign DFBPrefs: " DFBPREFSPATH "\n"
  128.                 "assign DFBTag: " DFBTAGPATH "\n"
  129.                 MAXSPATCH "\n"))
  130.  
  131.     (makeassign "DFB" DFBPATH)                    ;; set up assigns NOW
  132.     (makeassign "DFBData" DFBDATAPATH)
  133.     (makeassign "DFBUser" DFBUSERPATH)
  134.     (makeassign "DFBPrefs" DFBPREFSPATH)
  135.     (makeassign "DFBTag" DFBTAGPATH)
  136.     (copy-files-over)                            ;; copy DFB files over
  137.     (startup app-name (command USERSTARTUP)
  138.         (prompt "Can I add some assigns to your user-startup?")
  139.         (help "If you select yes, I will set up your startup-\n"
  140.             "sequence so DFB's assigns are run everytime you\n"
  141.             "boot up your computer. Also I need to add MaxsPatch\n"
  142.             "to make MAX's screens public and use new WB 2 pens.\n")
  143.     )    ;; add lines to startup
  144.  
  145.     (if (= @user-level 2)
  146.         (if (askbool (prompt "\nRun DFBPrefs to initiailize DFB now?\n")
  147.             (choices "Yes" "No")
  148.             (help "DFBPrefs is the main preferences programme for DFB\n"
  149.                 "When you run it for the first time, it will create\n"
  150.                 "DFB's data and get it ready to be run from MAX's.\n"
  151.                 "Make sure you enter DFBArchivers and fix those\n"
  152.                 "entries if you want to use file_id.diz's. Also\n"
  153.                 "you should make sure the 'Use File_id.dizs' flag is\n"
  154.                 "correctly set and you have chosen whether to use\n"
  155.                 "byte, file or credit ratios.\n"))
  156.             ((run "DFB:DFBPrefs")
  157.                 (set ran-prefs 1)))
  158.         ((run "DFB:DFBPrefs")
  159.             (set ran-prefs 1)))
  160.  
  161.     (if (= ran-prefs 1)
  162.         (message "DFB is now installed on your HD and also DFB\n"
  163.             "is set up, but to use DFB you still need to tell\n"
  164.             "MAX's BBS to run DFB. You do this by going into\n"
  165.             "MAX's and changing your menu items to\n"
  166.             "DFB:ReadDFB <args>. For more information see\n"
  167.             "the manual.\n")
  168.         (message "DFB is now installed on your HD, to fully\n"
  169.             "install it, you need to run DFBPrefs and also\n"
  170.             "tell MAX's BBS to run DFB. You do this by going\n"
  171.             "into MAX's and changing your menu items to\n"
  172.             "DFB:ReadDFB <args>. For more information see\n"
  173.             "the manual.\n"))
  174. )
  175.  
  176. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;    
  177. (procedure 
  178.  update-dfb
  179.     (set MODE "update")
  180.     (message "\nUPDATING DFB\n\n"
  181.             "This machine already has DFB installed, so I will\n"
  182.             "update you to the latest files. If this is in error\n"
  183.             "and DFB is not fully installed, abort installation\n"
  184.             "and delete your DFBPrefs:dfb.prefs file and restart\n"
  185.             "the installation.")
  186.     (copy-main-over)
  187.     (copy-c-drawer)
  188.     (copy-readdfb)    
  189.     (copy-developers)
  190.     (startup app-name (command MAXSPATCH)
  191.         (prompt "Now in DFB V1.3, you need to run a command called\n"
  192.             "MaxsPatch. Can I add it to your startup-sequence?\n")
  193.         (help "If you select yes, I will add MaxsPatch to make\n"            
  194.             "MAX's screens public and use new WB 2 pens.\n")
  195.     )    ;; add line to startup
  196.     (if (not (exists "DFB:Registration.key"))
  197.         (if (askbool (prompt "\nYou don't have a keyfile! Either this is because\n"
  198.                             "you haven't registered DFB or you are updating from\n"
  199.                             "an old version of DFB. If you are updating from an\n"
  200.                             "older version of DFB I can create the new registered\n"
  201.                             "library from the current version. Do you want me to?\n")
  202.             (choices "Yes" "No")
  203.             (help "DFB now uses a keyfile system to see who has registered.\n"
  204.                 "If you don't have a keyfile and haven't registered,\n"
  205.                 "select No. This will only work if you have registered.\n"
  206.                 "If you have registered, your old library will help create\n"
  207.                 "a keyfile for you. You *must* select Yes if you have an\n"
  208.                 "old registered library but no keyfile, otherwise your\n"
  209.                 "registered library will be overwritten!"))
  210.             (run "DFBMakeKeyFile"))
  211.     )
  212.     (copy-libraries)
  213. )
  214. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  215.  
  216. (welcome "Welcome to DFB V1.3 installer/updater.\n")
  217. (set app-name "DFB V1.3")
  218. (set APPNAME "DFB V1.3")
  219. (set MAXSPATCH "DFB:MaxsPatch >NIL:    ; This line *must* come before MAXsBBS is run")
  220.  
  221. (if (exists "DFBPrefs:DFB.prefs" (noreq))
  222.     (update-dfb) 
  223.     (install-dfb))
  224. (exit (quiet))    
  225.  
  226. ; EOF